<?php defined('TSTP_VERSION') or die('forbidden');


/**
* MLT Web Engine
* http://www.molotsoft.ru
*
* @package MLT_WE
* @subpackage Test_Types
* @author Ivan Chistyakov <ivan@molotsoft.ru>
* @version $Id: float.tstp.php 86 2008-09-25 08:13:20Z molotsoft@gmail.com $
* @link $HeadURL: http://test-types.googlecode.com/svn/tags/1.0.2/types/float.tstp.php $
*/


function tstp_float($var) {
	return is_float($var);
}

function tstp_double($var) { return tstp_float($var); }
function tstp_f($var) { return tstp_float($var); }
function tstp_d($var) { return tstp_float($var); }


function tstp_unsigned_float($var) {
	return is_float($var) && ($var >= 0.0);
}

function tstp_unsigned_double($var) { return tstp_unsigned_float($var); }
function tstp_ufloat($var) { return tstp_unsigned_float($var); }
function tstp_udouble($var) { return tstp_unsigned_float($var); }
function tstp_uf($var) { return tstp_unsigned_float($var); }
function tstp_ud($var) { return tstp_unsigned_float($var); }


define('TSTP_ZERO_FLOAT', 0.0);

function tstp_zero_float($var) {
	return is_float($var) && ($var === TSTP_ZERO_FLOAT);
}

define('TSTP_ZERO_DOUBLE', TSTP_ZERO_FLOAT);
define('TSTP_ZFLOAT', TSTP_ZERO_FLOAT);
define('TSTP_ZDOUBLE', TSTP_ZERO_FLOAT);
define('TSTP_ZF', TSTP_ZERO_FLOAT);
define('TSTP_ZD', TSTP_ZERO_FLOAT);

function tstp_zero_double($var) { return tstp_zero_float($var); }
function tstp_zfloat($var) { return tstp_zero_float($var); }
function tstp_zdouble($var) { return tstp_zero_float($var); }
function tstp_zf($var) { return tstp_zero_float($var); }
function tstp_zd($var) { return tstp_zero_float($var); }


function tstp_range_float($var, $minval = NULL, $maxval = NULL) {
	return is_float($var) && (!is_null($minval) ? ($var >= (float)$minval) : TRUE) && (!is_null($maxval) ? ($var <= (float)$maxval) : TRUE);
}

function tstp_range_double($var, $minval = NULL, $maxval = NULL) { return tstp_range_float($var, $minval, $maxval); }
function tstp_rfloat($var, $minval = NULL, $maxval = NULL) { return tstp_range_float($var, $minval, $maxval); }
function tstp_rdouble($var, $minval = NULL, $maxval = NULL) { return tstp_range_float($var, $minval, $maxval); }
function tstp_rf($var, $minval = NULL, $maxval = NULL) { return tstp_range_float($var, $minval, $maxval); }
function tstp_rd($var, $minval = NULL, $maxval = NULL) { return tstp_range_float($var, $minval, $maxval); }


?>